#ifndef __EVENTHANDLER_H
#define __EVENTHANDLER_H

struct EventHandlerId
{
    struct EventRunnerId *runnerId;
    struct InnerEventPool_S *innerEventPool;

};


typedef void (*ExecFunction)(uint8_t *data,uint8_t len);
/// @brief 创建handler 一个项目中可以有多个handler
/// @return 
struct EventHandlerId *EventHandlerCreate(struct EventRunnerId * id );
/// @brief 立即执行的任务
void PostImmediateTask();
/// @brief 延时执行的任务
void PostDelayTask();
/// @brief 定时循环任务
void PostCycleTask();
/// @brief 超时任务
void PostTimingTask();
/// @brief 发布主题
void PublicEvent();
/// @brief 订阅主题
void subscribeEvent();
#endif